package com.gitee.huxing.courese.core;

import java.util.Collection;
import java.util.Iterator;
import java.util.Spliterator;
import java.util.function.Predicate;
import java.util.stream.Stream;

/**
 * @Description: 抽象基础消息队列
 * @ProjectName: JavaCourse
 * @Package: com.gitee.huxing.courese.core
 * @ClassName: AbstactMessageQueue
 * @Author: huxing
 * @DateTime: 2021-11-07 5:57 下午
 */
public abstract class AbstactMessageQueue<E> implements MessageQueue<E>{

    @Override
    public boolean removeIf(Predicate filter) {
        return MessageQueue.super.removeIf(filter);
    }

    @Override
    public Spliterator spliterator() {
        return MessageQueue.super.spliterator();
    }

    @Override
    public Stream stream() {
        return MessageQueue.super.stream();
    }

    @Override
    public Stream parallelStream() {
        return MessageQueue.super.parallelStream();
    }

    @Override
    public int size() {
        return 0;
    }

    @Override
    public boolean isEmpty() {
        return false;
    }

    @Override
    public boolean contains(Object o) {
        return false;
    }

    @Override
    public Iterator iterator() {
        return null;
    }

    @Override
    public Object[] toArray() {
        return new Object[0];
    }

    @Override
    public Object[] toArray(Object[] a) {
        return new Object[0];
    }

    @Override
    public boolean remove(Object o) {
        return false;
    }

    @Override
    public boolean containsAll(Collection c) {
        return false;
    }

    @Override
    public boolean addAll(Collection c) {
        return false;
    }

    @Override
    public boolean removeAll(Collection c) {
        return false;
    }

    @Override
    public boolean retainAll(Collection c) {
        return false;
    }

    @Override
    public void clear() {

    }

    public abstract E poll(Integer consumerId);
}
